:host {
  display: inline-block;
  border: 0 none;
  height: auto;
  max-height: none;

  .clr-textarea {
    $h: 150px;
    border: 1px solid var(--clr-forms-border-color, #b3b3b3);
    display: flex;
    min-height: $h;
    border-radius: 3px;
    padding: 0;
    background: var(--clr-forms-textarea-background-color, #fff);

    div.numbers {
      width: 50px;
      min-height: $h;
      background: var(--clr-global-app-background, #fafafa);
      flex: 0 0 40px;
      font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
      font-size: 13px;
      padding: 10px 0 10px;
      border-top-left-radius: 3px;
      border-bottom-left-radius: 3px;
      color: var(--clr-forms-text-color, #000);
      line-height: 20px;
      .number {
        display: block;
        text-align: right;
        span {
          display: inline-block;
          padding: 0 10px 0 10px;
          border-radius: 2px;
          &.invalid {
            background: var(--clr-forms-invalid-color, #c21d00);
            color: var(--clr-forms-textarea-background-color, #fff);
          }
        }
      }
    }

    textarea {
      margin: 0;
      overflow: hidden;
      overflow-x: scroll;
      white-space: nowrap;
      border: 0 none;
      border-radius: 0;
      font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
      font-size: 13px;
      padding: 10px 10px 0;
      width: 100%;
      min-width: 500px;
      color: var(--clr-forms-text-color, #000);
      background: var(--clr-forms-textarea-background-color, #fff);
      line-height: 20px;

      &:focus {
        box-shadow: none;
        outline: none;
      }
    }

    &.focus {
      box-shadow: var(--clr-forms-textarea-focused-outline, 0 0 .1rem .1rem #69c0e2);
    }
  }

  .bar {
    padding: 0.3rem 0 0.2rem 0;
    font-size: 14px;
    color: #ccc;

    .divider {
      padding: 0 .8rem;
    }

    a {
      cursor: pointer;

      &:disabled {
        cursor: not-allowed;
        color: #888;
      }
    }
  }

  .btn-copy {
    width: auto;
    flex: none;

    input {
      display: none;
    }
  }
}
